Extracting text from images as part of a process

You can extract the text from an image using Optical Character Recognition (OCR) technologies and store this text in a separate field as part of a process. You could then search the knowledge database for this text.

For information about how to combine this functionality with the ability to populate the Knowledge Search collection from a process to provide the Ivanti SnapIT feature, see the Knowledge Management Guide. The Ivanti SnapIT feature enables users to supply an image of an error message and automatically be returned the best solutions found in the knowledge database for that error.

Setting the OCR behavior

The OCR technology used (Abbyy) is hosted in the cloud, and you need to subscribe and register an account at abbyy.com for your organization to use it. You then need to create an application on the Abbyy web site for Service Desk or Asset Manager to use and add these credentials to the system settings in Console.

For information about setting the OCR System Settings, see OCR Api Settings.

When you have configured the OCR system settings, you can set up the object and attributes that will be used to store the image and its extracted text.

To set up the OCR behavior:

  1. In Object Designer, open the object that you want to use the OCR functionality from.
    For example, Incident Management\Incident.
  2. Click the object name at the top of the Attributes tree, then in the Properties grid, alongside Behaviors, click ellipsis icon.
    The Behavior Selection dialog appears.
  3. In the Available Items list, select OCR, then click Right arrow.
    OCR moves to the Selected Items list.
  4. Click OK and save the changes.
    A new attribute is added to the object called OCR Status. This attribute is used to record whether or not the OCR request worked. 0 = none, 1 = succeeded, 2 = failed.
    Also, a new action is created that you can use in Process Designer called Extract text.

When you have created the object with the OCR behavior, you can configure the attributes that will store the image and its extracted text.

  1. Add an attribute to the object and set the attribute's Data Type to Attachment.
    For example, OCR Attachment.

Make sure you leave the Attachment Type property set to None.

  1. Set the Enable text extraction? property for the attribute to True and save the changes.
    A new attribute is added to the object, called Text from attribute title.
    For example, Text from OCR attachment. This is the attribute that will store the text extracted from the image.

You can change the text of the Extract text action (and add multilingual versions) using the Business Objects tree in Process Designer. For more information about actions, see Process actions. For more information about creating a multilingual system, see Designing a multilingual system.

You can add the Enable text extraction? property to more than one attachment attribute on the same object. In this instance, each attribute will have its own Text from... attribute, but will use the same Extract text action.

Using the Extract text action

When you have added the OCR behavior to an object and set the Enable text extraction? property for an attachment attribute to True, an Extract text action becomes available in Process Designer for processes based on that object. You can use this action with an Action Instance, an Automatic Action Instance, or an Optional Action Instance. The action extracts the text from the image in all of the Attachment attributes that have the Enable text extraction? property for an attachment attribute set to True and stores the extracted text in the corresponding Text from attribute title attribute.

For information about using Process Designer, see Process Designer.

Extract Text automatic action in a process

The OCR web service processes the image as containing text in the current user's application interface language. For example, if the user's culture is set to Japanese, the image will be processed as containing Japanese text. For information about how the application interface language is determined, see Designing a multilingual system.

For information about using this functionality to search for knowledge from an image, see SnapIT: Automatically searching for text extracted from an image.